package com.onpositive.collections;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import com.onpositive.notes.model.IHasClass;
import com.onpositive.notes.model.INote;
import com.onpositive.notes.model.ITemplate;

public interface ICollectionDelta<T> extends IHasClass<T>, Serializable {
	
	Date getDate() ;
	
	T getValue( ICollectionMember<?> member ) ;
	
	ITemplate getTemplate() ;
	
	INote getNote() ;
	
	List<ICollectionMember<?>> getAffectedMembers() ;
	
	IObjectCollection getCollection() ;
	
	void setCollection(IObjectCollection container) ;
	
	int getId() ;
	
	void setId(int id) ;
	
	List<Integer> getAffectedMembersIdList() ;
	
	int getCollectionId() ;
}
